package com.gaodun.hk.domain.entity;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

/**
 * @author fengyamin
 * @date 2021/2/18
 */

/**
 * 短信发送记录表
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "scrm_sms_send_record")
public class SmsSendRecord implements Serializable {
    /**
     * 主键ID
     */
    @Id
    @Column(name = "id")
    @GeneratedValue(generator = "JDBC")
    private Integer id;

    /**
     * 目标手机号
     */
    @Column(name = "phone_num")
    private String phoneNum;

    /**
     * 模板业务唯一表示
     */
    @Column(name = "template_code")
    private String templateCode;

    /**
     * 签名业务唯一ID
     */
    @Column(name = "signature_code")
    private String signatureCode;

    /**
     * 服务商返回的短信标识码
     */
    @Column(name = "provider_msg_code")
    private String providerMsgCode;

    /**
     * 发送状态（0-初始化，1-申请成功，2-申请失败，3-已经送达，4-送达失败】）
     */
    @Column(name = "send_status")
    private Integer sendStatus;

    /**
     * 发送结果描述
     */
    @Column(name = "description")
    private String description;

    /**
     * 服务提供商类型（0-联逾，1-阿里云，2-华为云）
     */
    @Column(name = "provider_type")
    private Integer providerType;

    /**
     * 逻辑删除标志位
     */
    @Column(name = "is_delete")
    private Integer isDelete;

    /**
     * 创建时间
     */
    @Column(name = "created_at")
    private Date createdAt;

    /**
     * 更新时间
     */
    @Column(name = "updated_at")
    private Date updatedAt;

    /**
     * 项目id
     */
    @Column(name = "project_id")
    private Integer projectId;

    private static final long serialVersionUID = 1L;
}